-
Notifications
You must be signed in to change notification settings - Fork 1.2k
feat: add Qoder CLI support to configuration and documentation #261
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughAdds Qoder (CLI) as a new AI tool: README entry, AI_TOOLS export, ToolConfigurator and SlashCommandConfigurator implementations and registry registrations, plus tests covering init and update behaviors for Qoder templates and slash command files. Changes
Sequence Diagram(s)sequenceDiagram
actor User
participant Init
participant ToolRegistry
participant QoderConfigurator
participant FileSystem
participant SlashRegistry
participant QoderSlashConfigurator
User->>Init: choose Qoder
Init->>ToolRegistry: get 'qoder' configurator
ToolRegistry->>Init: QoderConfigurator
Init->>QoderConfigurator: configure(projectPath)
QoderConfigurator->>FileSystem: write/update `QODER.md` (OpenSpec markers)
FileSystem-->>QoderConfigurator: ack
Init->>SlashRegistry: get 'qoder' slash configurator
SlashRegistry->>Init: QoderSlashConfigurator
Init->>QoderSlashConfigurator: generate commands
QoderSlashConfigurator->>FileSystem: write .qoder/commands/openspec/*.md with frontmatter
FileSystem-->>QoderSlashConfigurator: ack
Init-->>User: Qoder configured
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (8)
🚧 Files skipped from review as they are similar to previous changes (5)
🧰 Additional context used🧬 Code graph analysis (3)src/core/configurators/slash/registry.ts (1)
src/core/configurators/qoder.ts (4)
test/core/init.test.ts (1)
🔇 Additional comments (6)
Comment |
TabishB
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks for the contribution @KUTEJiang
c4f0481 to
1ea0c31
Compare
Thank you so much for your support and merging this! 🙏 |
…on-AI#261) Co-authored-by: pengjiahan.pjh <[email protected]>
PR: Add Qoder CLI Support
Summary
This PR adds native support for Qoder CLI as an AI coding assistant tool in OpenSpec. Qoder users will now be able to leverage OpenSpec's specification-driven development workflow with dedicated slash commands and configuration files.
Features Added
1. Qoder Slash Commands
/openspec:proposal,/openspec:apply, and/openspec:archivecommands.qoder/commands/openspec/directory2. Qoder Configuration File
QoderConfiguratorto manage QODER.md file at project root3. Integration Points
Changes Made
Core Implementation
src/core/configurators/qoder.ts: New configurator for QODER.md file managementsrc/core/configurators/slash/qoder.ts: New configurator for slash command filessrc/core/config.ts: Added Qoder to the AI_TOOLS arraysrc/core/configurators/registry.ts: Registered Qoder tool configuratorsrc/core/configurators/slash/registry.ts: Registered Qoder slash command configuratorDocumentation Updates
README.md: Added Qoder to the supported tools table and initialization descriptionTest Coverage
test/core/init.test.ts: Added comprehensive tests for Qoder configuration:test/core/update.test.ts: Added tests for Qoder file updates:Usage
After initializing OpenSpec with Qoder selected:
/openspec:proposalto create new change proposals/openspec:applyto implement approved changes/openspec:archiveto archive completed changesQODER.mdfile is created at the project root with OpenSpec instructionsTesting
All new functionality is covered by unit tests that verify:
Compatibility
This change is fully backward compatible and does not affect existing functionality. Users who don't select Qoder during initialization will not have any Qoder-specific files created.
Summary by CodeRabbit
New Features
Tests